@charset "UTF-8";

:root {
  --scrollbar: 0;
  font-size: 62.5%; /* 基準10px、モバイルでも読みやすいサイズ */
}

body {
  font-family: "Noto Sans JP", sans-serif;
  background-color: #c4e0ff;
}

a[href^="tel:"] {
  pointer-events: none;
}

*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

/* Remove default padding */

ul,
ol {
  padding: 0;
}

/* Remove default margin */

body,
h1,
h2,
h3,
h4,
p,
ul,
ol,
figure,
blockquote,
dl,
dd {
  margin: 0;
}

/* Set core root defaults */

/* Set core body defaults */

body {
  min-height: 100vh;
  text-rendering: optimizeSpeed;
  line-height: 1.5;
}

/* Remove list styles on ul, ol elements with a class attribute */

ul,
ol {
  list-style: none;
}

/* A elements that don't have a class get default styles */

a:not([class]) {
  -webkit-text-decoration-skip: ink;
          text-decoration-skip-ink: auto;
}

a {
  text-decoration: none;
}

/* Make images easier to work with */

img {
  max-width: 100%;
  display: block;
  width: 100%;
}

/* Natural flow and rhythm in articles by default */

article > * + * {
  margin-top: 1em;
}

/* Inherit fonts for inputs and buttons */

input,
button,
textarea,
select {
  font: inherit;
}

/* Blur images when they have no alt attribute */

/* img:not([alt]) {
  -webkit-filter: blur(10px);
          filter: blur(10px);
} */

/* フォームリセット */

input,
button,
select,
textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: transparent;
  border: none;
  border-radius: 0;
  font: inherit;
  outline: none;
}

textarea {
  resize: vertical;
}

input[type=checkbox],
input[type=radio] {
  display: none;
}

input[type=submit],
input[type=button],
label,
button,
select {
  cursor: pointer;
}

select::-ms-expand {
  display: none;
}

.l-mainContents {
  width: 80rem;
  margin-inline: auto;
  background-color: #ffffff;
  padding: 2rem 2rem 10rem 2rem;
}

.l-inner {
  width: 100vw;
  max-width: 80rem;
  padding-right: 4rem;
  padding-left: 4rem;
}

.l-outer {
  width: 100%;
  margin-inline: auto;
  overflow: hidden;
}

/************************************
****　本文記事見出し H2 H3 H4 H5
************************************/

.post-h2 {
  position: inherit;
  background: #285EAC;
  -webkit-box-shadow: 0px 0px 0px 5px #285EAC;
          box-shadow: 0px 0px 0px 5px #285EAC;
  border: dashed 1px #fff;
  padding: 15px 0 15px 20px;
  border-radius: 0;
  color: #fff;
}



.post-h3 {
  padding: 15px 0 15px 10px;
  /*文字周りの余白*/
  color: #285EAC;
  /*文字色*/
  background: #F6F6F6;
  /*背景色*/
  border-left: solid 5px #285EAC;
  /*左線（実線 太さ 色）*/
  border-bottom: 0;
}

.post-h3:before {
  width: 0em;
}

.post-h4 {
  border-bottom: solid 2px #285EAC;
}

.post-h5 {
  background: #F7F7F7;
  /*H5背景色の変更はこちら*/
  font-weight: normal;
  line-height: 2;
  color: #333333;
  border-bottom: none;
  border-radius: 4px;
  padding: 1.5em;
  margin-left: 0 auto;
  border: 1.5px dashed;
  border-color: #285EAC;
  /*H5枠色の変更はこちら*/
  margin-top: 1.5em;
  margin-bottom: 1.5em;
}

/************************************
****　番号付きリスト
************************************/

.list-number {
  counter-reset: number;
  list-style-type: none;
  padding: 0;
  margin: 0;
  line-height: 1.5;
}

.list-number li {
  position: relative;
  margin: 0.5em 0 !important;
  background-color: #F6F6F6;
  padding: 15px 0 15px 60px;
}

.list-number li:before {
  counter-increment: number;
  content: counter(number);
  background-color: #285EAC;
  /* 文字背景色 */
  color: #fff;
  /* 文字色 */
  position: absolute;
  font-weight: bold;
  font-size: 18px;
  left: 0;
  top: 0;
  width: 50px;
  text-align: center;
  height: 100%;
  line-height: 3.2;
}

/************************************
****　リストドット
************************************/

.list-dot {
  list-style: none;
  padding: 0;
  margin: 0;
}

.list-dot li {
  position: relative;
  margin: 0.5em 0 !important;
  padding-left: 25px;
}

.list-dot li:before {
  background-color: #285EAC;
  /* 点の色 */
  position: absolute;
  content: "";
  top: 12px;
  left: 0.5em;
  width: 7px;
  height: 7px;
  border-radius: 4px;
}

/************************************
****　ボックス
************************************/

.box-blue {
  background-color: #F6F6F6;
  padding: 20px;
  color: #285EAC;
  border-radius: 10px;
}

.box-red {
  background-color: #DCA1A1;
  padding: 20px;
  color: #fff;
  border-radius: 10px;
}

.box-yellow {
  background-color: #FBDFA9;
  padding: 20px;
  border-radius: 10px;
}

.box-merit {
  padding: 30px 20px 20px 20px;
  border: 2px solid #DCA1A1;
  position: relative;
  border-radius: 10px;
}

.box-mean {
  padding: 30px 20px 20px 20px;
  border: 2px solid #1B4E8D;
  position: relative;
  border-radius: 10px;
}

.box-precedent {
  padding: 30px 20px 20px 20px;
  border: 2px solid #E0E0E0;
  position: relative;
  border-radius: 10px;
}

.box-detail-merit {
  display: inline-block;
  position: absolute;
  background: #DCA1A1;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  border-radius: 10px;
  color: #fff;
  top: -20px;
  left: 20px;
  padding: 5px 20px;
}

.box-detail-mean {
  display: inline-block;
  position: absolute;
  background: #1B4E8D;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  border-radius: 10px;
  color: #fff;
  top: -20px;
  left: 20px;
  padding: 5px 20px;
}

.box-img {
  display: inline-block;
  position: absolute;
  top: -20px;
  left: 20px;
  width: 40px;
  height: 40px;
  background-size: contain;
}

.box-p {
  margin: 0 !important;
}

.wpcf7-list-item-label {
  color: #7f7f7f;
}

.header {
  width: 100%;
  max-width: 800px;
  margin-inline: auto;
  height: 10rem;
  background-color: #fff;
}

.header__inner {
  width: 100%;
  padding-left: 4rem;
  padding-right: 4rem;
  height: inherit;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.header__name {
  aspect-ratio: 353/62.22;
  width: 35.3rem;
}

.header__name img {
  width: 100%;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
}

.date {
  padding-top: 2rem;
  padding-bottom: 2rem;
}

.date__text {
  font-size: 3.2rem;
  line-height: 100%;
  font-weight: 400;
  color: #000;
}

.footer {
  background-color: #051422;
  width: 80rem;
  margin-inline: auto;
  padding: 8rem 0;
  text-align: center;
}

.footer-copyright {
  color: #ffffff;
  font-size: rem(12);
  line-height: 2.5;
}

.footer-nav__item {
  padding-bottom: 3.2rem;
}

.footer-nav__item:last-child {
  padding-bottom: 0;
}

.footer-nav__link {
  font-size: 3.2rem;
  color: #fff;
  display: block;
}

.refine-search {
  max-width: calc(100% - 20px);
  margin: 0 auto;
  padding: 10rem 1rem 10rem 1rem;
  overflow: hidden;
}

.refine-search strong {
  color: #ee3322;
  font-weight: bold;
  font-style: normal;
}

.refine-search .marker {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(30%, #ff0));
  background: linear-gradient(transparent 60%, #ff0 30%);
}

.refine-search .title-main {
  text-align: center;
  font-size: 2.4rem;
  font-weight: bold;
  color: #ffffff;
  line-height: 1.2;
  background-color: #2c5c7c;
  margin: 0 -10px;
  padding: 20px 10px 16px;
}

.refine-search .subTitle {
  text-align: center;
  font-size: 1.6rem;
  color: #000;
  margin-top: 3rem;
}

.refine-search .refine-content {
  border: 2px solid #2c5c7c;
  padding: 0 4%;
  margin-top: 3rem;
}

.refine-search .wrap-filter {
  width: 100%;
  padding: 20px 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.refine-search .lists .list {
  width: 100%;
  height: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}

.refine-search .lists .list + .list {
  margin-top: 30px;
}

.refine-search .lists .list dt {
  color: #2c5c7c;
  font-weight: bold;
  font-size: 1.6rem;
}

.refine-search .lists .list dd {
  font-size: 1.6rem;
}

.refine-search form[name=refine-search-filter] input {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  vertical-align: middle;
  cursor: default;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: relative;
  padding: 0;
  margin: 0 5px 3px 0;
  border: 1px solid #2c5c7c;
  display: inline-block;
  width: 14px;
  height: 14px;
}

.refine-search form[name=refine-search-filter] input:checked {
  background: #fff;
}

.refine-search form[name=refine-search-filter] input:checked::before {
  color: #2c5c7c;
  content: "■";
  display: inline-block;
  position: absolute;
  top: 43%;
  left: 50%;
  -webkit-transform: translate(-50%, -43%);
          transform: translate(-50%, -43%);
  font-size: 10px;
}

.refine-search .resetBtn {
  width: 100%;
  height: auto;
  padding: 12px 0;
  text-align: center;
  color: #fff;
  border: none;
  font-size: 14px;
  margin-top: 30px;
  cursor: pointer;
  background: #34879e;
}

.refine-search .resetBtn:disabled {
  background: #ccc;
}

.refine-search .wrap-result {
  width: 90%;
  margin: 0 auto;
  padding-bottom: 20px;
  overflow: hidden;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.refine-search .refine-search-result {
  width: 100%;
  font-size: 14px;
  background-color: #ffffff;
  padding: 10px 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: none;
}

.refine-search .refine-search-result + .refine-search-result {
  border-top: 1px solid #ddd;
}

.refine-search .refine-search-result .resultInner {
  padding: 10px 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}

.refine-search .refine-search-result:first-of-type .resultInner {
  background: #FCF1D3;
}

.refine-search .refine-search-result:nth-of-type(2) .resultInner {
  background: #F6D4D8;
}

.refine-search .refine-search-result:nth-of-type(3) .resultInner {
  background: #DEDFEF;
}

.refine-search .refine-search-result:nth-of-type(4) .resultInner {
  background: #C8EFEA;
}

.refine-search .refine-search-result:last-of-type .resultInner {
  background: #C9E8F1;
}

.refine-search .refine-search-result .text__box {
  width: 60%;
  height: auto;
  text-align: center;
}

.refine-search .refine-search-result .text__box .rank {
  font-size: 26px;
  margin: 0;
  position: relative;
  z-index: 1;
  padding: 10px 0 0;
}

.refine-search .refine-search-result .text__box .rank:after {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  background: url("../img/common/refine.png") no-repeat;
  background-size: 100%;
  width: 56px;
  height: 43px;
  z-index: -1;
}

.refine-search .refine-search-result .text__box .name {
  font-size: 14px;
  letter-spacing: 0.05em;
  margin: 5px 0 0;
}

.refine-search .refine-search-result .text__box .score {
  font-size: 24px;
  margin: 10px 0 0;
}

.refine-search .refine-search-result .text__box .score .fullScore {
  font-size: 20px;
}

.refine-search .refine-search-result .link__box {
  width: 40%;
  height: auto;
}

.refine-search .refine-search-result .link__box a {
  width: 100%;
  height: auto;
  display: block;
  opacity: 1;
  -webkit-transition: opacity 0.2s;
  transition: opacity 0.2s;
}

.refine-search .refine-search-result .link__box a:hover {
  opacity: 0.8;
}

.refine-search .refine-search-result .link__box a img {
  width: 100%;
  height: auto;
}

.top-margin__100 {
  margin-top: 10rem;
}

.top-margin__50 {
  margin-top: 5rem;
}

.top-margin__20 {
  margin-top: 2rem;
}

.top-margin__40 {
  margin-top: 4rem;
}

.order__title {
  font-size: 3.2rem;
  color: #fff;
  background-color: #035397;
  padding: 0.5rem 1rem;
  font-weight: bold;
  text-align: center;
  letter-spacing: 0.05em;
}

.order__item {
  text-align: center;
  border-bottom: dotted #11468F 3px;
  padding: 3rem 0;
}

.order__logo {
  aspect-ratio: 300/100;
  max-width: 30rem;
  text-align: center;
  margin: 0 auto;
}

.order__logo img {
  width: 100%;
  height: 100%;
}

.order__text {
  margin-top: 3rem;
  font-size: 2.4rem;
}

.order__subtext {
  margin-top: 3rem;
  font-size: 2rem;
}

.order__text span {
  font-weight: bold;
}

.order__space {
  margin-top: 3rem;
}

.yellow-line {
  text-decoration: underline;
  text-decoration-thickness: 0.5em;
  text-decoration-color: #FFD700;
  text-underline-offset: -0.3em;
  -webkit-text-decoration-skip-ink: none;
          text-decoration-skip-ink: none;
}

.btn {
  display: inline-block;
  position: relative;
  overflow: hidden;
  border-radius: 5rem;
  color: #fff;
  font-weight: bold;
  font-size: 2.4rem;
  line-height: 1;
  text-align: center;
  background-color: #E8630A;
  width: 80%;
  -webkit-box-shadow: inset 2px 2px 2px 0px rgba(255, 255, 255, 0.5), 7px 7px 20px 0px rgba(0, 0, 0, 0.1), 4px 4px 5px 0px rgba(0, 0, 0, 0.1);
          box-shadow: inset 2px 2px 2px 0px rgba(255, 255, 255, 0.5), 7px 7px 20px 0px rgba(0, 0, 0, 0.1), 4px 4px 5px 0px rgba(0, 0, 0, 0.1);
  text-shadow: 2px 2px 3px rgba(255, 255, 255, 0.5), -4px -4px 6px rgba(116, 125, 136, 0.2);
  padding: 2rem 0;
}

.btn.btn-table {
  -webkit-box-shadow: none;
          box-shadow: none;
  text-shadow: none;
  width: 80%;
  border-radius: 1.2rem;
  padding: 1rem 0;
  font-size: 1.6rem;
}

.btn-table.btn-table__small {
  background-color: #f47118;
  border-bottom: solid 3px #ad5515;
  border-radius: 0, 4rem;
  width: 100%;
}

.btn.btn-cta {
  width: 50%;
}

.btn.btn-line {
  background-color: #32cd32;
  width: 50%;
}

.btn:hover {
  color: #825121;
  background-color: #fac186;
  text-decoration: none;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.btn.btn-table:hover {
  opacity: 0.8;
  background-color: #E8630A;
  color: #fff;
}

.btn::after {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: -100%;
  background-image: linear-gradient(130deg, rgba(255, 255, 255, 0) 25%, rgba(255, 255, 255, 0.8) 50%, rgba(255, 255, 255, 0) 100%);
  -webkit-animation: shiny-btn1 3s ease-in-out infinite;
          animation: shiny-btn1 3s ease-in-out infinite;
}

@-webkit-keyframes shiny-btn1 {
  0% {
    -webkit-transform: scale(0) rotate(135deg);
            transform: scale(0) rotate(135deg);
    opacity: 0;
  }

  80% {
    -webkit-transform: scale(0) rotate(135deg);
            transform: scale(0) rotate(135deg);
    opacity: 0.5;
  }

  81% {
    -webkit-transform: scale(4) rotate(135deg);
            transform: scale(4) rotate(135deg);
    opacity: 1;
  }

  100% {
    -webkit-transform: scale(50) rotate(135deg);
            transform: scale(50) rotate(135deg);
    opacity: 0;
  }
}

@keyframes shiny-btn1 {
  0% {
    -webkit-transform: scale(0) rotate(135deg);
            transform: scale(0) rotate(135deg);
    opacity: 0;
  }

  80% {
    -webkit-transform: scale(0) rotate(135deg);
            transform: scale(0) rotate(135deg);
    opacity: 0.5;
  }

  81% {
    -webkit-transform: scale(4) rotate(135deg);
            transform: scale(4) rotate(135deg);
    opacity: 1;
  }

  100% {
    -webkit-transform: scale(50) rotate(135deg);
            transform: scale(50) rotate(135deg);
    opacity: 0;
  }
}

.space {
  margin-top: 3rem;
  text-align: center;
}

.box-nayami {
  padding: 5rem 4rem 4rem;
  border: 2px solid #11468F;
  position: relative;
  border-radius: 0.5rem;
  background-color: #EEEEEE;
  font-size: 2rem;
}

.box-nayami__detail {
  display: inline-block;
  position: absolute;
  background: #fff;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  border-radius: 0.5rem;
  color: #001E6C;
  top: -3rem;
  left: 2rem;
  padding: 1rem 2rem;
  font-weight: bold;
}

.box-choose {
  padding: 5rem 4rem 4rem;
  border: 2px solid #11468F;
  position: relative;
  border-radius: 0.5rem;
  background-color: #fff;
  font-size: 2rem;
}

.box-choose__detail {
  display: inline-block;
  position: absolute;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  border-radius: 0.5rem;
  background-color: #fff;
  color: #001E6C;
  top: -3rem;
  left: 2rem;
  padding: 1rem 2rem;
  font-weight: bold;
}

.box-feauture {
  padding: 5rem 4rem 4rem;
  border: 2px solid #FF0000;
  position: relative;
  border-radius: 0.5rem;
  background-color: #fff;
  font-size: 2rem;
}

.box-feauture__detail {
  display: inline-block;
  position: absolute;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  border-radius: 0.5rem;
  background-color: #FF0000;
  color: #fff;
  top: -3rem;
  left: 2rem;
  padding: 1rem 2rem;
  font-weight: bold;
}

.box-recomend {
  padding: 5rem 4rem 4rem;
  border: 2px solid #ffd700;
  position: relative;
  border-radius: 0.5rem;
  background-color: #fffacd;
  font-size: 2rem;
}

.box-recomend.box-recomend-blue {
  border: solid 2px #b3e5fc;
  background: #e1f5fe;
}

.box-recomend.box-recomend-red {
  border: solid 2px #ef9a9a;
  background: #ffebee;
}

.box-recomend__detail {
  display: inline-block;
  position: absolute;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  border-radius: 0.5rem;
  background-color: #fff;
  color: #ffa500;
  top: -3rem;
  left: 2rem;
  padding: 1rem 2rem;
  font-weight: bold;
}

.box-recomend__detail.box-recomend__detail--blue {
  color: #03a9f4;
}

.box-recomend__detail.box-recomend__detail--red {
  color: #03a9f4;
}

.box-text__recomend {
  list-style: none;
  font-weight: bold;
  color: #333;
  margin-top: 1rem;
}

.box-text__recomend:first-child {
  margin-top: 0;
}

.box-careful {
  padding: 5rem 4rem 4rem;
  border: 8px solid #FF0000;
  position: relative;
  border-radius: 0.5rem;
  background-color: #ffebee;
  font-size: 2rem;
  list-style: none;
}

.box-careful__detail {
  display: inline-block;
  position: absolute;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  border-radius: 0.5rem;
  background-color: #fff;
  color: #ef5350;
  top: -3rem;
  left: 2rem;
  padding: 1rem 2rem;
  font-weight: bold;
}

.box-careful__title {
  font-size: 2.8rem;
  font-weight: bold;
}

.box-blue {
  background-color: #F6F6F6;
  padding: 20px;
  color: #285EAC;
  border-radius: 10px;
}

.box-yellow {
  background-color: #FBDFA9;
  padding: 20px;
  border-radius: 10px;
}

.box-mean {
  padding: 30px 20px 20px 20px;
  border: 2px solid #1B4E8D;
  position: relative;
  border-radius: 10px;
}

.box-precedent {
  padding: 30px 20px 20px 20px;
  border: 2px solid #E0E0E0;
  position: relative;
  border-radius: 10px;
}

.box-detail-merit {
  display: inline-block;
  position: absolute;
  background: #DCA1A1;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  border-radius: 10px;
  color: #fff;
  top: -20px;
  left: 20px;
  padding: 5px 20px;
}

.box-detail-mean {
  display: inline-block;
  position: absolute;
  background: #1B4E8D;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  border-radius: 10px;
  color: #fff;
  top: -20px;
  left: 20px;
  padding: 5px 20px;
}

.box-img {
  display: inline-block;
  position: absolute;
  top: -20px;
  left: 20px;
  width: 40px;
  height: 40px;
  background-size: contain;
}

.box-text {
  list-style: none;
  padding-left: 5rem;
  position: relative;
  margin-top: 1rem;
  font-weight: bold;
}

.box-text:first-child {
  margin-top: 0;
}

.box-text:before {
  background: #3880ff;
  color: #ffffff;
  border-radius: 50%;
  width: 2.5rem;
  height: 2.5rem;
  left: 0;
  top: 0.4rem;
  position: absolute;
  content: "";
  z-index: 1;
}

.box-text.box-text__choose:before {
  background: #FCD900;
}

.box-text:after {
  content: "";
  background: url(../img/common/check.png) no-repeat center/contain;
  width: 1.5rem;
  height: 1.5rem;
  left: 0.4rem;
  top: 1.6rem;
  position: absolute;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  z-index: 2;
}

.box__container {
  text-align: center;
}

.box__logo {
  aspect-ratio: 400/100;
  max-width: 30rem;
  text-align: center;
  margin: 0 auto;
  display: inline-block;
  margin-top: 3rem;
}

.box__logo img {
  width: 100%;
  height: 100%;
}

.box__feauture {
  margin-top: 3rem;
}

.feauture__title {
  color: #001E6C;
  font-weight: bold;
  font-size: 2.4rem;
  text-align: center;
}

.feauture__body {
  margin: 0 3rem;
  margin-top: 3rem;
}

.feauture__text {
  font-size: 2rem;
  margin-top: 1rem;
}

.feauture__text:first-child {
  margin-top: 0;
}

.feauture__text span {
  font-weight: bold;
}

.box__space {
  text-align: center;
  margin-top: 4rem;
}

.cta__container {
  background-color: #035397;
  padding: 2rem 0;
  text-align: center;
}

.cta__text {
  font-size: 2rem;
  letter-spacing: 0.05em;
  color: #fff;
  font-weight: bold;
}

.cta__space {
  margin-top: 1.5rem;
}

.section-header {
  text-align: center;
  position: relative;
}

.section-header.section-header__left {
  text-align: left;
}

.section-header__title {
  font-size: 3.2rem;
  font-weight: bold;
  color: #001E6C;
  display: inline-block;
  line-height: 1.2;
}

.section-header__title--line:before,
.section-header__title--line:after {
  content: "";
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 20rem;
  border-top: solid 5px #001E6C;
}

.section-header__title--line:before {
  right: 0;
}

.section-header__title--line:after {
  left: 0;
}

.section-header__title.section-header__title--background {
  background-color: #11468F;
  color: #fff;
  display: block;
  text-align: center;
  padding: 1rem 0;
  line-height: 1.5;
}

.section-header__title.section-header__title--point {
  position: relative;
  border-top: solid 0.5rem #11468F;
  border-bottom: solid 0.5rem #11468F;
  background: #fff;
  line-height: 1.5;
  padding: 1.5rem 1rem;
  display: block;
}

.point {
  position: absolute;
  left: 0px;
  bottom: 100%;
  background: #11468F;
  color: #fff;
  border-radius: 0.5rem 0.5rem 0 0;
  padding: 1rem 1.2rem 0.8rem;
  font-size: 2.4rem;
  font-weight: bold;
  line-height: 1;
  letter-spacing: 0.05em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.point img {
  width: 2rem;
  height: 2.3rem;
  margin-right: 1rem;
}

.section-header__title.section-header__title--ribon {
  /*外側の余白｜上余白｜左右余白｜下余白｜*/
  margin: 0 auto;
  /* 横幅（全体 - 左右余白） */
  width: calc(100% - 10rem);
  /* 文字間 */
  letter-spacing: 0.04em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  /*水平方向に間隔を配置する方法。
  flex-start = 左側から配置する
  center = センタリングする
  flex-end = 右側から配置する*/
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

/* リボン内のテキストが入る所 */

.section-header__title--ribon span {
  width: 100%;
  color: #000000;
  background: #ffd700;
  font-size: 2.8rem;
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.section-header__title--ribon:before,
.section-header__title--ribon:after {
  display: block;
  height: 0px;
  content: "";
  border: 50px solid #ffd700;
}

.section-header__title--ribon:before {
  border-left-width: 15px;
  border-left-color: transparent;
}

.section-header__title--ribon:after {
  border-right-width: 15px;
  border-right-color: transparent;
}

/* スマホ表示の時 */

.section-header__title.section-header__title--bubble {
  font-size: 2.4rem;
  background: #00bfff;
  font-weight: bold;
  color: #fff;
  letter-spacing: 0.05em;
  border-radius: 10px;
  position: relative;
  padding: 2rem;
  width: 100%;
}

.section-header__title--bubble:after {
  position: absolute;
  bottom: -9px;
  left: 3rem;
  width: 0;
  height: 0;
  content: "";
  border-width: 1rem 1rem 0 1rem;
  border-style: solid;
  /*吹き出しのしっぽ色*/
  border-color: #00bfff transparent transparent transparent;
}

.choose__text {
  margin-top: 3rem;
  font-size: 1.6rem;
  line-height: 1.5;
}

.article__title {
  font-size: 2.8rem;
  font-weight: bold;
}

.article__text p {
  font-size: 2rem;
  letter-spacing: 0.05em;
  line-height: 1.5;
}

.article__text span {
  font-weight: bold;
}

.article__text--orange {
  color: #FF8C00;
}

.article__text--blue {
  color: #1E90FF;
}

.article__text--red {
  color: #FF0000;
}

.article__lists li {
  font-size: 2rem;
  letter-spacing: 0.05em;
  line-height: 1.5;
}

.recomend__items {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 3rem;
}

.recomend__item {
  background-color: white;
  border: 2px solid rgba(238, 238, 238, 0.9333333333);
  border-radius: 10px;
  padding: 1rem;
}

.recomend__item {
  max-width: 30rem;
  text-align: center;
  margin: 0 auto;
}

.recomend__title {
  font-size: 4rem;
  color: #575757;
  font-weight: bold;
}

.recomend__title span {
  font-size: 5rem;
  color: #11468F;
}

.recomend__item img {
  width: 100%;
  height: 100%;
}

.recomend__body {
  border: 4px solid #11468F;
  border-radius: 1.2rem;
  padding: 3rem;
}

/************************************
**** クリニック名・ポイント表
************************************/

.table-header__title {
  background: #f9f9f9;
  font-weight: bold;
  padding: 0.5rem 2rem;
  border-radius: 10px;
  letter-spacing: 0.05em;
  border: 3px solid #d8d8d8;
  position: relative;
}

.table-header__title:before {
  position: absolute;
  bottom: -14px;
  left: 1em;
  width: 0;
  height: 0;
  content: "";
  border-width: 14px 12px 0 12px;
  border-style: solid;
  border-color: #d8d8d8 transparent transparent transparent;
}

.table-header__title:after {
  position: absolute;
  bottom: -10px;
  left: 1em;
  width: 0;
  height: 0;
  content: "";
  border-width: 14px 12px 0 12px;
  border-style: solid;
  /*吹き出しのしっぽの背景色*/
  border-color: #f9f9f9 transparent transparent transparent;
}

.table-header__title span {
  /*「タイトル」の文字色*/
  color: #11468F;
  font-size: 3.6rem;
}

.table-header__title {
  font-size: 3.2rem;
}

.table-header {
  text-align: left;
  position: relative;
}

.table-rank {
  padding: 2rem 0;
}

.shop__logo {
  display: inline-block;
  max-width: 22rem;
  text-align: center;
  margin: 0 auto;
}

.shop__logo img {
  width: 100%;
  height: 100%;
}

.shop__body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.shop__day {
  font-size: 1rem;
  font-weight: bold;
  line-height: 1.2;
  margin-top: 0.5rem;
  margin-right: 1rem;
}

.shop__money {
  font-size: 2.4rem;
  font-weight: bold;
  letter-spacing: 0.05em;
}

.shop__money span {
  color: #ff0000;
}

.explaine__text {
  color: #333;
  font-size: 2.4rem;
}

.explaine__text span {
  font-size: 1.6rem;
}

.explaine__space {
  margin-top: 2rem;
}

.table-ranking {
  border-collapse: collapse;
  border: none;
  border-spacing: 0;
  width: 100%;
  height: auto;
  color: #333;
}

.table-ranking th,
.table-ranking td {
  vertical-align: top;
  border: none;
  font-weight: normal;
  text-align: center;
}

.table-ranking > thead th {
  background-color: #11468F;
  /* タイトルセルの背景色 */
  text-align: center;
  font-size: 120%;
  color: #fff;
  /* タイトルセルの文字色 */
  font-weight: bold;
  padding: 2rem;
  font-size: 2rem;
}

.table-ranking > thead th:nth-child(n+1) {
  border-right: 2px solid #fff;
}

.table-ranking > thead th:last-of-type {
  border: none;
}

.table-ranking > tbody tr {
  border-bottom: 2px solid #ccc;
}

.table-ranking > tbody td {
  padding: 2rem 0;
}

.table__items {
  text-align: center;
  padding: 1rem 0;
}

.table__space {
  margin-top: 1rem;
}

/************************************
**** クリニック比較表
************************************/

.table-wrap {
  overflow-x: scroll;
}

.table {
  width: 100%;
  border-collapse: collapse;
}

.table th {
  background-color: #f3f3f3;
  color: #000;
}

.table th,
.table td {
  border: 1px solid #ccc;
  padding: 10px 10px;
  min-width: 20rem;
  white-space: inherit;
}

.table-wrap th {
  font-size: 1.6rem;
  font-weight: bold;
}

.table-wrap td {
  font-size: 1.6rem;
  text-align: center;
}

/* 比較表のcolspan見出し */
.colspan_text {
  font-weight: bold !important;
}

.statick-table-box .colspan_text {
  font-weight: bold !important;
}

.statick-table-box tbody th {
  font-weight: bold !important;
}

/*全体の設定*/

.productIntro__box {
  max-width: 100%;
  height: auto;
  padding: 0;
  margin: 0px auto;
  margin-top: 5rem;
}

/*商品名＆ランキングの設定*/

.productIntro__box .productIntro__head {
  width: 100%;
  margin-bottom: 20px;
}

/*商品名の設定*/

.productIntro__box .productIntro__head .head {
  font-size: 2.4rem;
  color: #041562;
  font-weight: bold;
  padding: 0 10px 2rem;
  border-bottom: 4px dotted #035397;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

/*ランキング部分の設定*/

.productIntro__box .productIntro__head .head .ranking {
  font-size: 2.8rem;
  position: relative;
  padding: 0 3rem;
  font-family: Geogia, serif;
  z-index: 1;
}

/*冠の設定*/

.productIntro__box .productIntro__head .head .ranking:after {
  content: "";
  width: 7.5rem;
  height: 5.2rem;
  z-index: -1;
  position: absolute;
  top: -0.2rem;
  left: 0;
}

/*1位の冠の画像*/

.productIntro__box .productIntro__head .head .ranking.no1:after {
  content: "";
  /*1位の冠画像の入れ替えは下記URLになります*/
  background: url("../img/common/rank-gold.png");
  background-size: contain;
  background-repeat: no-repeat;
}

/*2位の冠の画像*/

.productIntro__box .productIntro__head .head .ranking.no2:after {
  content: "";
  /*2位の冠画像の入れ替えは下記URLになります*/
  background: url("../img/common/rank-silver.png");
  background-size: contain;
  background-repeat: no-repeat;
}

/*3位の冠の画像*/

.productIntro__box .productIntro__head .head .ranking.no3:after {
  content: "";
  /*3位の冠画像の入れ替えは下記URLになります*/
  background: url("../img/common/rank-bronze.png");
  background-size: contain;
  background-repeat: no-repeat;
}

/*冠の横幅を変更したら「75px」部分を同様の数値に変更してください*/

.productIntro__box .productIntro__head .head .productName {
  width: calc(100% - 75px);
}

/*商品画像、おすすめポイント！部分の設定*/

.productIntro__box .productIntro__content {
  width: 100%;
  margin-bottom: 5px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

/*商品画像部分の設定*/

.productIntro__box .productIntro__content .product__img {
  /*横幅*/
  width: 37%;
  /*高さ*/
  height: auto;
  /*右側の余白（PC表示時）*/
  margin-right: 3%;
}

/*商品画像とオススメポイントのスマホ表示時の設定
（スマホ表示の際、PCと同様に横配列にする場合は下記7行をコメントアウトしてください）*/

.productIntro__box .productIntro__content .product__img .product {
  width: 100%;
  height: auto;
}

/*おすすめポイント！部分の設定*/

.productIntro__box .productIntro__content .product__text {
  /*横幅（商品画像とおすすめポイント！を横に並べる場合は横幅＆余白合計を100%以内にしてください）*/
  width: 60%;
  /*高さ*/
  height: auto;
}

/*商品画像とオススメポイントのスマホ表示時の設定
（スマホ表示の際、PCと同様に横配列にする場合は下記7行をコメントアウトしてください）*/

/*「おすすめポイント！」の設定*/

.pointText {
  font-size: 2rem;
  font-weight: bold;
  color: #001E6C;
  margin: 0 0 1rem;
}

/*おすすめポイント！のリストの箱設定*/

.productIntro__box .productIntro__content .product__text .productList__box {
  padding: 0;
  margin: 0;
}

/*リスト部分の設定*/

.productList {
  /*リストスタイル（オリジナルのリストアイコンを使用のためnone）*/
  list-style: none;
  position: relative;
  /*リスト左のアイコンのための余白*/
  padding-left: 2.5rem;
  /*リスト同士の余白（現在下につけています）*/
  margin-bottom: 1rem;
  font-size: 1.6rem;
}

/*リストアイコン*/

/*リストアイコン*/

.productList:before {
  content: "";
  margin: 0;
  position: absolute;
  top: 5px;
  left: 0;
  width: 8px;
  height: 8px;
  border-radius: 4px;
  background: #001E6C;
  -webkit-box-shadow: 9px 0 #001E6C, 0 9px #001E6C, 9px 9px #001E6C;
          box-shadow: 9px 0 #001E6C, 0 9px #001E6C, 9px 9px #001E6C;
}

/*おすすめポイント！リストの最後*/

.productIntro__box .productIntro__content .product__text .productList__box .productList:last-of-type {
  margin-bottom: 10px;
}

/*商品詳細部分の設定*/

.product__detail {
  background: rgba(238, 238, 238, 0.9333333333);
  border: solid 2px #001E6C;
  border-radius: 5px;
  padding: 3rem;
  margin-top: 3rem;
}

.productDetail__box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}

.product__space {
  margin-top: 3rem;
  text-align: center;
}

/*商品詳細の見出し*/

.detailTitle {
  /*横幅*/
  width: 12rem;
  text-align: center;
  background: #FCD900;
  padding: 1rem 0;
  margin: 0 2rem 1rem 0;
  position: relative;
  font-size: 2rem;
}

/*商品詳細の見出し上にある飾り*/

.detailTitle:before {
  content: "";
  /*上線｜太さ｜線種｜色｜*/
  border-top: 1px dashed white;
  position: absolute;
  /*縦位置（上基準）*/
  top: 3px;
  /*横位置（左基準）*/
  left: 0;
  /*横幅*/
  width: 100%;
}

/*商品詳細の見出し下にある飾り*/

.detailTitle:after {
  content: "";
  /*下線｜太さ｜線種｜色｜*/
  border-top: 1px dashed white;
  position: absolute;
  /*縦位置（下基準）*/
  bottom: 3px;
  /*横位置（左基準）*/
  left: 0;
  /*横幅*/
  width: 100%;
}

/*商品詳細の内容部分の設定*/

.detailText {
  /*商品詳細の見出しの横幅、もしくは余白を変更した場合は下記も変更してください*/
  width: calc(100% - 20rem);
  /*外側の余白｜上余白｜左右余白｜下余白｜*/
  margin: 0 0 1rem;
  /*行間（商品見出しと同じ高さにすることによって垂直方向のセンタリングをする）*/
  line-height: 50px;
  font-size: 1.6rem;
  text-align: left;
}

/*商品詳細の内容で使用する赤文字*/

.productIntro__box .product__detail .productDetail__box .detailText.clr-red {
  /*文字色*/
  color: #DA1212;
}

/*「総合評価」の★の設定*/

.productIntro__box .product__detail .productDetail__box .detailText.rate {
  position: relative;
  display: inline-block;
  /*★の大きさ*/
  font-size: 20px;
  /*はみ出た要素を非表示にする*/
  overflow: hidden;
}

/*総合評価に使用する記号等*/

.productIntro__box .product__detail .productDetail__box .detailText.rate:before,
.productIntro__box .product__detail .productDetail__box .detailText.rate:after {
  content: "★★★★★";
}

/*星の色が薄い部分*/

.productIntro__box .product__detail .productDetail__box .detailText.rate:before {
  /*文字色*/
  color: #ccc;
}

/*星の色が黄色い部分*/

.productIntro__box .product__detail .productDetail__box .detailText.rate:after {
  position: absolute;
  /*横位置（左基準）*/
  left: 0;
  /*縦位置（上基準）*/
  top: 0;
  /*文字色*/
  color: #FFA500;
  /*はみ出た要素を非表示にする*/
  overflow: hidden;
}

/*色あり記号にする設定*/

.productIntro__box .product__detail .productDetail__box .detailText.rate.star1:after {
  /*1文字分*/
  width: 1em;
}

.productIntro__box .product__detail .productDetail__box .detailText.rate.star2:after {
  width: 2em;
}

.productIntro__box .product__detail .productDetail__box .detailText.rate.star3:after {
  width: 3em;
}

.productIntro__box .product__detail .productDetail__box .detailText.rate.star4:after {
  width: 4em;
}

.productIntro__box .product__detail .productDetail__box .detailText.rate.star5:after {
  width: 5em;
}

/*「初回価格」の文字が大きい部分*/

.productIntro__box .product__detail .productDetail__box .detailText .firstPrice {
  /*文字の大きさ*/
  font-size: 20px;
  /*文字の太さ*/
  font-weight: bold;
}

.cp_actab {
  position: relative;
  overflow: hidden;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  border: 1px solid #ccc;
  border-radius: 10px;
  color: #333;
  border-color: #676FA3;
  border: 2px solid;
  text-align: center;
}

.cp_actab input {
  position: absolute;
  z-index: -1;
  opacity: 0;
}

.cp_actab label {
  font-weight: bold;
  line-height: 3;
  position: relative;
  display: block;
  padding: 0 0 0 1em;
  cursor: pointer;
  margin: 0 0 1px 0;
  background: #F7F6F6;
  font-size: 2rem;
}

.cp_actab .cp_actab-content {
  overflow: hidden;
  max-height: 0;
  -webkit-transition: max-height 0.35s;
  transition: max-height 0.35s;
  color: #333;
  background: #fff;
  border-radius: 10px;
}

.cp_actab .cp_actab-content p {
  margin: 1em;
}

/* :checked */

.cp_actab input:checked ~ .cp_actab-content {
  max-height: 50rem;
}

/* Icon */

.cp_actab label::after {
  line-height: 3;
  position: absolute;
  top: 0;
  right: 0;
  display: block;
  width: 3em;
  height: 3em;
  -webkit-transition: all 0.35s;
  transition: all 0.35s;
  text-align: center;
}

.cp_actab input[type=checkbox] + label::after {
  content: "+";
}

.cp_actab input[type=checkbox]:checked + label::after {
  -webkit-transform: rotate(315deg);
          transform: rotate(315deg);
}

.actab-box {
  background-color: #EEF2FF;
  border-radius: 10px;
  -webkit-box-shadow: 0px 5px 10px 0px rgba(0, 0, 0, 0.1);
          box-shadow: 0px 5px 10px 0px rgba(0, 0, 0, 0.1);
  padding: 1.5rem 1.5rem;
  margin: 0 auto;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-bottom: 1px solid #ccc;
}

h4.kutikomi-title {
  font-size: 1.8rem;
}

.kutikomi-text {
  font-size: 1.4rem;
  text-align: left;
  margin-top: 1.5rem;
}

.kutikomi-kind {
  font-size: 1.4rem;
  text-align: right;
  margin-top: 1rem;
}

.parent {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.child-left {
  margin-right: 12px;
}

.child-left img {
  /*画像サイズは下記３行それぞれ同じに変更ください*/
  width: 80px;
  min-width: 80px;
  height: 80px !important;
  /*画像を丸くしない場合は下記を削除*/
  border-radius: 50%;
  -o-object-fit: cover;
     object-fit: cover;
}

.child-right {
  height: auto;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  padding: 0 0 0 12px;
}

dl {
  margin: 0;
}

dt {
  /*クチコミ文字サイズ*/
  font-size: 14px;
}

dd {
  /*名前・歳文字サイズ*/
  font-size: 14px;
  margin: 0;
  text-align: right;
}

p.kutikomi-plus {
  /*注釈の文字サイズ*/
  font-size: 1rem;
  /*注釈の文字色*/
  color: #8B8A8A;
  margin-top: 0.5rem;
  line-height: 1.4;
  text-align: right;
}

.company__table {
  max-width: 80rem;
  width: 100%;
}

.company__table th,
td {
  border: solid 1px;
  /* 枠線指定 */
  padding: 10px;
  /* 余白指定 */
}

.company__table th {
  max-width: 12rem;
  width: 30%;
  font-weight: bold;
  /* 幅指定 */
  background-color: #035397;
  /* 背景色指定 */
  color: white;
}

.company__table th {
  font-size: 2.8rem;
}

.company__table td {
  max-width: 68rem;
  width: 70%;
  background-color: rgba(238, 238, 238, 0.9333333333);
  color: #333;
}

.company__table td a {
  color: #333;
  text-decoration: none;
}

.company__table td {
  font-size: 2rem;
  letter-spacing: 0.05em;
  line-height: 1.5;
}

.info__text span {
  font-weight: bold;
}

.info__tittle {
  padding: 1.5rem 0;
  padding-left: 2rem;
  background: #F6FAFF;
  border-left: solid 5px #285EAC;
  line-height: 1.5;
  font-size: 2.8rem;
}

.info__text {
  font-size: 2rem;
  line-height: 1.5;
}

.info__text.info__text--center {
  text-align: center;
}

.info__text a {
  text-decoration: underline;
  color: #234EDF;
}

.info__lists {
  list-style: none;
}

.lists__tittle {
  padding: 15px 0;
  background: #F6FAFF;
  line-height: 1;
  font-size: 14px;
  position: relative;
}

.lists__tittle::before {
  content: attr(data-number);
  display: inline;
  padding: 15px 10px;
  margin-right: 10px;
  color: #285EAC;
  line-height: 1;
  font-size: 16px;
  font-size: 1.6rem;
  background-color: #F6FAFF;
}

.info__list {
  font-size: 2rem;
  line-height: 1.5;
}

.u-sectionSpace {
  width: 100%;
  height: 8rem;
  color: transparent;
}

.u-sectionSpaceLarge {
  width: 100%;
  height: 11rem;
  color: transparent;
}

.u-inlineBlock {
  display: inline-block;
}

@media screen and (min-width: 601px) {
  .refine-check {
    max-width: 15rem;
  }

  .refine-title {
    width: 15rem;
    margin-right: 5rem;
  }

  .refine-check-left {
    margin-left: 3rem;
  }
}

@media screen and (min-width: 801px) {
  :root {
    font-size: 68%; /* デスクトップ表示でより読みやすいサイズ（基準10.88px） */
  }
}

@media screen and (max-width: 768px) {
  a[href^="tel:"] {
    pointer-events: auto;
  }

  .refine-search .title-main {
    font-size: 4.2rem;
  }

  .refine-search .subTitle {
    font-size: 3rem;
  }

  .refine-search .lists .list dt {
    font-size: 3rem;
  }

  .refine-search .lists .list dd {
    font-size: 3rem;
  }

  .box-nayami {
    font-size: 3rem;
  }

  .box-choose {
    font-size: 3rem;
  }

  .box-feauture {
    font-size: 3rem;
  }

  .box-recomend {
    font-size: 3rem;
  }

  .box-text:before {
    top: 1rem;
    width: 3rem;
    height: 3rem;
  }

  .box-text:after {
    top: 2.5rem;
    width: 2rem;
    height: 2rem;
  }

  .feauture__title {
    font-size: 3rem;
  }

  .feauture__text {
    font-size: 2.4rem;
  }

  .cta__text {
    font-size: 3rem;
  }

  .section-header__title {
    font-size: 4.8rem;
  }

  .section-header__title--line:before,
  .section-header__title--line:after {
    width: 18rem;
  }

  .shop__money {
    font-size: 2.8rem;
  }

  .explaine__text {
    font-size: 2.8rem;
  }

  .explaine__text span {
    font-size: 2.4rem;
  }

  .table-wrap th {
    font-size: 2.4rem;
  }

  .table-wrap td {
    font-size: 2.4rem;
  }

  .productIntro__box .productIntro__head .head {
    font-size: 3.6rem;
    padding: 0 10px 3rem;
  }

  .productIntro__box .productIntro__head .head .ranking {
    padding: 0 4.8rem;
    font-size: 4rem;
  }

  .productIntro__box .productIntro__head .head .ranking:after {
    top: -0.7rem;
    width: 11.8rem;
    height: 9.2rem;
  }

  /*商品画像部分の設定*/

  .productIntro__box .productIntro__content .product__img {
    /*横幅*/
    width: 100%;
    /*右側の余白*/
    margin-right: 0;
    /*商品画像とおすすめポイント！の間の余白*/
    margin-bottom: 10px;
  }

  /*おすすめポイント！部分の設定*/

  .productIntro__box .productIntro__content .product__text {
    /*横幅*/
    width: 100%;
    margin-top: 3rem;
  }

  .pointText {
    font-size: 4rem;
  }

  .productList {
    font-size: 3rem;
    padding-left: 4.5rem;
  }

  .productList:before {
    top: 1.1rem;
  }

  .detailTitle {
    font-size: 3rem;
    padding: 2rem 0;
    width: 15rem;
  }

  .detailText {
    font-size: 2.6rem;
  }
}

@media screen and (max-width: 767px) {
  .section-header__title--ribon {
    /*外側の余白｜上余白｜左右余白｜下余白｜*/
    margin: 2rem 0;
    /* 横幅 */
    width: 100%;
  }
}

@media (max-width: 619px) {
  .table-ranking {
    font-size: 70%;
  }
}

@media screen and (max-width: 600px) {
  .refine-search .lists .list {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }

  .refine-search .lists .list dt {
    width: 100%;
  }

  .refine-search .lists .list dd {
    margin: 5px 3rem 0 0;
  }

  .refine-search .refine-search-result .resultInner {
    padding: 10px;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }

  .refine-search .refine-search-result .text__box .rank {
    font-size: 20px;
    padding-top: 5px;
  }

  .refine-search .refine-search-result .text__box .rank:after {
    width: 40px;
    height: 30px;
  }

  .refine-search .refine-search-result .text__box .score {
    font-size: 20px;
  }

  .refine-search .refine-search-result .text__box .score .fullScore {
    font-size: 16px;
    margin-top: 5px;
  }

  .article__title {
    font-size: 3.4rem;
  }

  .article__text p {
    font-size: 3rem;
  }

  .article__text p {
    font-size: 3rem;
  }

  .company__table th {
    font-size: 3.4rem;
  }

  .company__table td {
    font-size: 3rem;
  }

  .info__tittle {
    padding-left: 2rem;
    font-size: 3.4rem;
  }

  .info__text {
    font-size: 3rem;
  }

  .info__list {
    font-size: 3rem;
  }
}

/************************************
**** 余白調整: 最終更新日と記事ライター
************************************/

/* 最終更新日の余白を5mmに設定 */
.text-size-s.mb-10 {
  margin-bottom: 5mm !important;
  padding-bottom: 0 !important;
}

.text-size-s.mb-md-5 {
  margin-bottom: 5mm !important;
  padding-bottom: 0 !important;
}

/* 最終更新日を含む親要素の余白を削減 */
.sb-custom {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

.sb-custom-part-lfw3b7bnk563v2uj4wk {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

.article-body > div {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

/* この記事を書いた人セクションの余白を削減 */
.section-margin-author {
  margin-top: 0 !important;
  margin-bottom: 1cm !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

.author.section-margin-author {
  margin-top: 0 !important;
  margin-bottom: 1cm !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

/* この記事を書いた人セクションの後のcontentセクションの余白を削減 */
.author.section-margin-author + .content {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

section.author + section.content {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

.content {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

.p-explaine {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

.c-explaine {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

.c-explaine > * {
  margin-top: 0 !important;
}

.c-explaine h2:first-child {
  margin-top: 0 !important;
}

.p-author {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

.c-author-item {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 1.5rem !important;
}

/* この記事を書いた人の見出しとアイコンの間を5mmに設定 */
.c-author-item .c-author-item__heading {
  margin-bottom: 5mm !important;
  padding-bottom: 0 !important;
}

.c-author-item .c-author-item__heading.c-heading {
  margin-bottom: 5mm !important;
  padding-bottom: 0 !important;
}

.c-heading__ja {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

.c-author-item .c-author-item__staff {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

.c-author-item__staff-img {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

/*# sourceMappingURL=style.css.map */